// // router/index.js
// import Vue from 'vue';
// import Router from 'vue-router';

// // 页面组件
// import Login from '../pages/login.vue';
// // import Dashboard from '../pages/dashboard/dashboard.vue';
// // import AdminDashboard from '../pages/admin-dashboard/admin-dashboard.vue';
// // import UserDashboard from '../pages/user-dashboard/user-dashboard.vue';

// Vue.use(Router);

// const routes = [
//   { path: '/login', component: Login },
//   // { path: '/dashboard', component: Dashboard, meta: { requiresAuth: true } }, // 需要登录才能访问
//   // { path: '/admin-dashboard', component: AdminDashboard, meta: { requiresAuth: true, requiredRole: 'Admin', requiredPermissions: ['view', 'edit', 'delete', 'approve'] } },
//   // { path: '/user-dashboard', component: UserDashboard, meta: { requiresAuth: true, requiredRole: 'User', requiredPermissions: ['view'] } },
//   // { path: '*', redirect: '/login' }  // 捕获所有未匹配的路径，跳转到登录页
// ];

// const router = new Router({
//   routes
// });

// // 全局路由守卫
// router.beforeEach((to, from, next) => {
//   const userInfo = JSON.parse(localStorage.getItem('userInfo')); // 获取存储的用户信息

//   const isLoggedIn = userInfo !== null; // 判断是否登录
//   const userRole = isLoggedIn ? userInfo.role : null; // 获取用户角色
//   const userPermissions = isLoggedIn ? userInfo.permissions : []; // 获取用户权限

//   const requiresAuth = to.meta.requiresAuth; // 目标页面是否需要登录
//   const requiredRole = to.meta.requiredRole; // 目标页面需要的角色
//   const requiredPermissions = to.meta.requiredPermissions || []; // 目标页面需要的权限

//   if (requiresAuth && !isLoggedIn) {
//     // 如果页面需要登录且用户未登录
//     next('/login'); // 未登录，跳转到登录页
//   } else if (requiresAuth && requiredRole && userRole !== requiredRole) {
//     // 如果用户角色不匹配
//     next('/dashboard'); // 跳转到默认的仪表盘
//   } else if (requiresAuth && requiredPermissions.length > 0 && !requiredPermissions.every(permission => userPermissions.includes(permission))) {
//     // 如果用户没有足够的权限
//     next('/dashboard'); // 跳转到默认的仪表盘
//   } else {
//     next(); // 已登录且符合条件，继续访问页面
//   }
// });

// export default router;
